package DataStructure.sort.innerSort.innerSortImpl;

import Logic.utils.UTFactory;
import Top100.basicDS.SortInterface;
import org.junit.Test;

/**
 * @author liujun
 * @version 1.0
 * @date 2019-11-14 22:13
 * @author—Email ljfirst@mail.ustc.edu.cn
 * @description 神奇排序
 * @blogURL
 */
public class AmazingSort implements SortInterface {

    @Test // 点击运行测试案例
    public void test() throws Exception {
        UTFactory.test(this.getClass().getName());
    }

    //冒泡排序    参数：int类型数组，对数组进行排序
    @Override
    public void sortMethod(int[] array) {
        if (!check(array)) {
            return;
        }
        int length = array.length;
        // 实现一：
        for (int i = 0; i < length; i++) {
            for (int j = 0; j < length; j++) {
                if (array[i] < array[j]) {
                    swap(array, i, j);
                }
            }
        }
        // 实现二：
        /*for (int i = 1; i < length; i++) {
            if (array[0] < array[i]) {
                swap(array, 0, i);
            }
        }
        for (int i = 1; i < length; i++) {
            for (int j = 0; j < i; j++) {
                if (array[i] < array[j]) {
                    swap(array, i, j);
                }
            }
        }*/
    }
}
